
#ifndef __CE_FILE_H__
#define __CE_FILE_H__

#include <cecore/ceexport.h>
#include <cecore/ifile.h>

class CE_CORE_API ceFile : public iFile
{
	IQF_DECLARATION;
private:
	FILE*	file;

	ceString filename;
public:
	ceFile (const ceString& filename);

	virtual bool Open (int mode);
	virtual bool IsOpen () const;
	virtual void Close ();

	virtual size_t Write (const void* src, size_t size);
	virtual size_t Write (const ceString& text);

	virtual size_t Read (void* data, size_t size);

	virtual void Seek (SeekPos pos, long offset = 0);
	virtual long Tell () const;

};

#endif /* ! __CE_FILE_H__ */ 

